home *** CD-ROM | disk | FTP | other *** search
/ Gekkan Dennou Club 145 / Gekkan Dennou Club - 2000.6 Vol. 145 (Japan).7z / Gekkan Dennou Club - 2000.6 Vol. 145 (Japan) (Track 1).bin / tools / sharp / xc2103i.lzh / XC2103.XDF / ASK30 / FILES_TO.S < prev    next >
Text File  |  1993-09-15  |  2KB  |  155 lines

  1. ********************************************************************************
  2. *
  3. *    FILES for ASK3
  4. *    Copyright (C) 1992  ACCESS CO.,LTD.
  5. *
  6. ********************************************************************************
  7.     .include    doscall.mac
  8.  
  9.     .xref    _acc
  10.     .xref    _mbuf            *デバイスドライバ終了アドレスを求める
  11.  
  12.     .text
  13.     .even
  14. devhdr:
  15.     .dc.l    -1
  16.     .dc.w    $8000
  17.     .dc.l    str
  18.     .dc.l    intr
  19.     .dc.b    'FILES**/'
  20.  
  21. rqhdr:    .dc.l    0
  22. str:
  23.     move.l    a5,rqhdr
  24.     rts
  25.  
  26. intr:
  27.     movem.l    d0-d7/a0-a6,-(sp)
  28.     move.l    rqhdr,a5
  29.     clr.l    d0
  30.     move.b    2(a5),d0
  31.     tst.b    d0
  32.     bne    notcom
  33.     bsr    init
  34.     move.b    d0,3(a5)
  35.     lsr.w    #8,d0
  36.     move.b    d0,4(a5)
  37.     bra    intr_end
  38. notcom:
  39.     move.b    #$03,3(a5)
  40.     move.b    #$00,4(a5)
  41. intr_end:
  42.     movem.l    (sp)+,d0-d7/a0-a6
  43.     rts
  44.  
  45. init:
  46.     move.l    #50,-(sp)        *ASKのバージョンチェック
  47.     DOS    _KNJCTRL
  48.     addq.l    #4,sp
  49.     cmpi.l    #300,d0
  50.     blt    ask3_not_exist
  51.  
  52.     pea.l    _acc            *アクセサリを登録する
  53.     move.l    #60,-(sp)
  54.     DOS    _KNJCTRL
  55.     addq.l    #8,sp
  56.     cmpi.l    #-1,d0
  57.     beq    inierr
  58.  
  59.     pea.l    okmes
  60.     DOS    _PRINT
  61.     addq.l    #4,sp
  62.     move.l    #_mbuf+18,14(a5)
  63.     clr.l    d0
  64.     rts
  65.  
  66. ask3_not_exist:
  67.     pea.l    errmes
  68.     DOS    _PRINT
  69.     addq.l    #4,sp
  70. inierr:    move.w    #$700d,d0
  71.     rts
  72.  
  73.     .data
  74.     .even
  75. okmes:    .dc.b    'FILES for ASK3 Copyright (C) 1992 ACCESS CO.,LTD.',13,10,0
  76. errmes:    .dc.b    'ASKver3.00以上がありません. ',0
  77.  
  78.     .text
  79.     .even
  80. *
  81. *FPコール62番
  82. *
  83.     .xdef    _sstrtom
  84. _sstrtom:
  85.     link    a6,#0
  86.     bsr    brkget
  87.     move.l    16(a6),-(sp)
  88.     move.l    12(a6),-(sp)
  89.     move.l    8(a6),-(sp)
  90.     move.l    #62,-(sp)
  91.     bsr    brkset
  92.     DOS    _KNJCTRL
  93.     unlk    a6
  94.     rts
  95.  
  96. *
  97. *FILES
  98. *
  99.     .xdef    _files
  100.     .xdef    _fname
  101. _files:
  102.     bsr    brkget
  103.     move.w    #$0030,-(sp)
  104.     pea.l    namptr
  105.     pea.l    filbuf
  106.     DOS    _FILES
  107.     lea.l    10(sp),sp
  108.     bsr    brkset
  109.     rts
  110.  
  111. *
  112. *NFILES
  113. *
  114.     .xdef    _nfiles
  115. _nfiles:
  116.     bsr    brkget
  117.     pea.l    filbuf
  118.     DOS    _NFILES
  119.     addq.l    #4,sp
  120.     bsr    brkset
  121.     rts
  122.  
  123.     .data
  124.     .even
  125. namptr: .dc.b    '*.*',0
  126. filbuf:    .ds.b    30
  127. _fname:    .ds.b    23
  128.  
  129. *
  130. *一時的に"BREAK OFF"にする
  131. *
  132.     .text
  133.     .even
  134. brkget:
  135.     move.w    #-1,-(sp)        *ブレークチェックしているか?
  136.     DOS    _BREAKCK
  137.     addq.l    #2,sp
  138.     move.w    d0,brksts        *その情報をセーブする
  139.     clr.w    -(sp)            *ブレークチェックしないに設定
  140.     DOS    _BREAKCK
  141.     addq.l    #2,sp
  142.     rts
  143.  
  144. brkset:
  145.     move.l    d0,-(sp)        *d0保存
  146.     move.w    brksts,-(sp)        *ブレークチェック環境を元に戻す
  147.     DOS    _BREAKCK
  148.     addq.l    #2,sp
  149.     move.l    (sp)+,d0
  150.     rts
  151.  
  152. brksts:    .dc.w    0
  153.  
  154.     .end
  155.